Method And Device For Determining Subband Index

ABSTRACT

The present invention discloses a method for determining a subband index, the method comprises: an Evolved Node B (eNB) receives r, calculates a difference between the received r and a formula 
     
       
         
           
               
             
               〈 
               
                 
                   
                     
                       N 
                       - 
                       
                         s 
                         i 
                       
                     
                   
                 
                 
                   
                     
                       M 
                       - 
                       i 
                     
                   
                 
               
               〉 
             
           
         
       
     
     corresponding to each obtained subband index, searches sequences 
     
       
         
           
             
               〈 
               
                 
                   
                     
                       N 
                       - 
                       1 
                     
                   
                 
                 
                   
                     
                       M 
                       - 
                       i 
                     
                   
                 
               
               〉 
             
             , 
             
               〈 
               
                 
                   
                     
                       N 
                       - 
                       2 
                     
                   
                 
                 
                   
                     
                       M 
                       - 
                       i 
                     
                   
                 
               
               〉 
             
             , 
             … 
              
             
                 
             
             , 
             
               〈 
               
                 
                   
                     0 
                   
                 
                 
                   
                     
                       M 
                       - 
                       i 
                     
                   
                 
               
               〉 
             
           
         
       
     
     in a stored intermediate value table according to the calculated difference to obtain each s i  constituting {s i } i=0   M−1 . The present invention further discloses a device for determining a subband index, the device comprises a table generation module, a receiving module and a calculation module. The method and device disclosed in the present invention are capable of reducing the storage space needed for a subband index report.

TECHNICAL FIELD

The present invention relates to a long term evolution (LTE) technology, particularly to a method and device for determining a subband index.

BACKGROUND

In a third generation partnership project LTE (3GPP LTE) system, a mobile terminal can use a physical uplink shared channel (PUSCH) to report a channel quality indicator (CQI) non-periodically. The non-periodical report consists of three kinds of mode: a wideband mode, a mobile terminal selection mode and a high-level configuration mode; and a high level configures which mode can be used semi-statically.

During reporting the CQI, the mobile terminal needs to report a combined index related to subband indexes of M subbands selected by itself firstly. When the CQI is reported through the mobile terminal selection mode, it is defined:

${\langle\begin{matrix} x \\ y \end{matrix}\rangle} = \left\{ \begin{matrix} {\begin{pmatrix} x \\ y \end{pmatrix},} & {x \geq y} \\ {0,} & {{x < y},} \end{matrix} \right.$

where

$\left( \left. \quad\begin{matrix} x \\ y \end{matrix} \right) \right.$

represents a combination number extracting y elements from x different elements,

${\begin{pmatrix} x \\ y \end{pmatrix} = \frac{x!}{{y!}{\left( {x - y} \right)!}}};$

the mobile terminal reports a combined index

$r = {\sum\limits_{i = 0}^{M - 1}{\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}}}$

to an Evolved Node B (eNB), wherein N represents the number of subbands of a downlink system, and M represents the number of subbands selected by the mobile terminal; and a set {s_(i)}_(i=0) ^(M−1) comprising M subband indexes sorted in ascending order, i.e., subband indexes of M subbands, wherein 1≦s_(i)≦N, and s_(i)<s_(i+1).

At present, the subband index can be determined by the combined index with reference to a direct table lookup method, which specifically is:

an eNB obtains possible values of M and N according to a formula N=downlink system bandwidth/subband size as well as a correspondence table of downlink system bandwidth, subband size and M; calculates all possible values of r and each value of s_(i) corresponding to different values of r according to definition above and the possible values of M and N; generates and stores a lookup table comprising each possible value of each r and {s_(i)}_(i=0) ^(M−1) corresponding to that each possible value according to the result of the calculation; after receiving a r reported by the mobile terminal, the eNB inquires the stored lookup table to obtain {s_(i)}_(i=0) ^(M−1) corresponding to the received r, that is, the subband indexes of M subbands, wherein the correspondence table of downlink system bandwidth, subband size and the number of the subbands that can be selected by the mobile terminal is shown in Table 1.

Wherein the possible values of r are within a range from 0 to

$\left( {\begin{pmatrix} N \\ M \end{pmatrix} - 1} \right),$

and each possible value of r corresponds to {s_(i)}_(i=0) ^(M−1), it can be seen that there is a great amount of data contained in the lookup table. Therefore, when the direct table lookup method is used to determine a subband index, a large storage space is needed for storing a lookup table,which cause an increase in the hardware cost of the eNB.

TABLE 1 Downlink system Subband The number of subbands that can bandwidth size be selected by a mobile terminal 6-7 NA NA  8-10 2 1 11-26 2 3 27-63 3 5  64-110 4 6

SUMMARY

In view of this, it is a main object of the present invention to provide a method and device for determining a subband index which are capable of reducing the storage space that need to be occupied for determining the subband index.

In order to achieve the above-mentioned object, the technical scheme of the present invention is realized as follows.

A method for determining a subband index, comprises: generating and storing an intermediate value table in advance according to possible values of M and N, the method further comprises:

an Evolved Node B (eNB) receives r, calculates a difference between the received r and a

$\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each obtained subband index, searches sequences

$\quad{{\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle},{\quad{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle},\ldots \mspace{14mu},{\quad{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}}}}}$

in the stored intermediate value table according to the calculated difference to obtain each s_(i), which constitutes {s_(i)}_(i=0) ^(M−1).

where i=0, 1, . . . , (M−1); N represents the number of subbands of a downlink system, M represents the number of subbands selected by a mobile terminal, r represents a combined index, and {s_(i)}_(i=0) ^(M−1) represents at comprising M subband indexes sorted in ascending order.

The method may further comprise, prior to calculating the difference, determining whether the received combined index is greater than or equal to 0 but smaller than or equal to

$\begin{pmatrix} N \\ M \end{pmatrix} - 1.$

The method may further comprise, prior to the eNB receives the combined index, the mobile terminal reports the combined index to the eNB.

Generating the intermediate value table in advance according to possible values of M and N may specifically comprise:

plugging the possible values of M and N in

$\quad{\langle\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}$

to calculate the values of

$\quad{{\langle\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle},}$

and respectively sorting, according to the ascending order of h, each value of

$\quad{\langle\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}$

that are gained by calculating on the condition that the values of M, N and i are all the same so as to obtain each sequence of

${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle},{\quad{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle},\ldots \mspace{14mu},{\quad{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}}}}$

that are respectively corresponding to different values of M, N and i; and storing the each sequence to obtain the intermediate value table;

where h=0, 1, . . . , N.

The method may further comprise, after generating the intermediate value table, taking N, M and i as indexes of the intermediate value table.

Obtaining each s_(i) may specifically comprise:

A1: initializing k=0, then my_r=r, wherein my_r refers to the difference between the received r and the

$\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each obtained subband index;

B1: searching the first value that is not greater than the current my_r from left to right in the sequences

${\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\quad{{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\quad{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}}}}$

of the stored intermediate value table, marking the searched value as

${\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},$

and taking j as an obtained subband index s_(k), and

C1: setting

${my\_ r} = {{my\_ r} - {\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}}$

and k=k+1, regarding a set of the obtained subband indexes as {s_(i)}_(i=0) ^(k) and regarding the

$\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each element in {s_(i)}_(i=0) ^(k) as

$\left\{ {\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle} \right\}_{i = 0}^{k},$

returning to execute step B1 until k is greater than (M−1), and then ending the subband index determination flow of this time.

Obtaining each s_(i) may specifically comprise:

A2: initializing k=0, then my_r=r, wherein my_r refers to the difference between the received r and the

$\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each obtained subband index;

B2: searching the last value that is not greater than the current my_r from right to left in the sequences

${\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\quad{{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\quad{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}}}}$

of the stored intermediate value table, marking the searched value as

${\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},$

and taking j as an obtained subband index s_(k), and

C2: setting

${my\_ r} = {{my\_ r} - {\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}}$

and k=k+1, regarding a set of the obtained subband indexes as {s_(i)}_(i=0) ^(k) and regarding the

${\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}\quad$

corresponding to each element in {s_(i)}_(i=0) ^(k) as

$\left\{ {\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle} \right\}_{i = 0}^{k},$

returning to execute step B2 until k is greater than (M−1), and then ending the subband index determination flow of this time.

A device for determining a subband index, comprises: a table generation module, a receiving module and a processing module, wherein

the table generation module is used for generating and storing an intermediate value table according to possible values of M and N;

the receiving module is used for receiving r; and

the processing module is used for calculating a difference between the received r and

${\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}\quad$

corresponding to each obtained subband index, and searching sequences

${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle}{\quad{,{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle}{\quad{,\ldots \mspace{14mu},{{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}\quad}}}}}}$

in the stored intermediate value table according to the calculated difference to obtain each s_(i), which constitutes {s_(i)}_(i=0) ^(M−1);

wherein i=0, 1, . . . , (M−1); N represents the number of subbands of a downlink system, M represents the number of subbands selected by a mobile terminal, r represents a combined index, and {s_(i)}_(i=0) ^(M−1) represents a set comprising M subband indexes sorted in ascending order.

The table generation module may comprise a first calculation module and a first storage module, wherein

the first calculation module is used for plugging the possible values of M and N in

${\langle\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}{\quad;}$

and respectively sorting, according to the ascending order of h, each value of

${\langle\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}\quad$

that are gained by calculating on the condition that the values of M, N and i are all the same so as to obtain each sequence of

${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle}{\quad{,{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle}{\quad{,\ldots \mspace{14mu},{{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}\quad}}}}}}$

that are respectively corresponding to different values of M, N and i; and

the first storage module is used for storing the obtained sequences as the intermediate value table.

The processing module may comprise an initialization module, a searching module, a second storage module and a second calculation module, wherein

the initialization module is used for initializing k=0, then my_r=r, and sending the result of the initialization to the searching module, wherein my_r refers to the difference between the received r and the

${\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}\quad$

corresponding to each obtained subband index, and r represents a combined index;

the searching module is used for searching the first value that is not greater than the current my_r from left to right in the sequences

${\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle}{\quad{,{{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle}{\quad{,\ldots \mspace{14mu},{{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}\quad}}}}}}$

of the stored intermediate value table, marking the searched value as

${\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},$

and sending j to the second storage module as an obtained subband index s_(k), and sending the current my_r and

${\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}\quad$

to the second calculation module; or searching the last value that is not greater than the current my_r from right to left in the sequences

${\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle}{\quad{,{{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle}{\quad{,\ldots \mspace{14mu},{{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}\quad}}}}}}$

of the stored intermediate value table, marking the searched value as

${\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}{\quad,}$

and taking j as an obtained subband index s_(k),

the second storage module is used for storing each obtained s_(k) that constitutes {s_(i)}_(i=0) ^(k), and each s_(i) stored in the second storage module constitutes {s_(i)}_(i=0) ^(M−1) until k is greater than (M−1); and

the second calculation module is used for setting

${my\_ r} = {{my\_ r} - {\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}}$

and k=k+1, and returning my_r and k to the searching module, and then ending the flow until k is greater than (M−1).

The processing module may further comprise a judging module which is used for triggering the initialization module when the received combined index is greater than or equal to 0 but smaller than or equal to

$\begin{pmatrix} N \\ M \end{pmatrix} - 1.$

By calculating the difference between the received combined index and the

${\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}\quad$

corresponding to each obtained subband index, searching the sequences

${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle}{\quad{,{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle}{\quad{,\ldots \mspace{14mu},{{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}\quad}}}}}}$

in the stored intermediate value table according to the calculated difference to obtain each s_(i), the subband index determining method and device provided in the present invention only need to store the sequences

${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle}{\quad{,{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle}{\quad{,\ldots \mspace{14mu},{{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}\quad}}}}}}$

under different i in the intermediate value table when the values of M and N are specified, so as to reduce the storage space that need to be occupied for determining a subband index and lower the hardware cost of the eNB.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a realization flowchart illustrating a method for reporting a subband index according to an embodiment of the present invention; and

FIG. 2 is a structural schematic diagram illustrating a device for reporting a subband index according to an embodiment of the present invention.

DETAILED DESCRIPTION

The realization flowchart of a subband index determining method of an embodiment in the present invention is shown in FIG. 1, the method comprises the following steps.

Step 101: an eNB obtains sequences

${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle}{\quad{,{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle}{\quad{,\ldots \mspace{14mu},{{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}\quad}}}}}}$

in advance according to possible values of M and N and stores the obtained sequences as an intermediate value table.

Wherein the specific generation and storage method is as follows:

plugging the possible values of M and N in

${\langle\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}\quad$

to calculate the values of

${\langle\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}{\quad,}$

and respectively sorting, according to the ascending order of h, each value of

${\langle\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}\quad$

that are gained by calculating on the condition that the values of M, N and i are all the same so as to obtain each sequence of

${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle}{\quad{,{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle}{\quad{,\ldots \mspace{14mu},{{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}\quad}}}}}}$

that are respectively corresponding to different values of M, N and i; and storing the each sequence to obtain the intermediate value table;

where i=0, 1, . . . , (M−1), h=0, 1, . . . , N; N represents the number of subbands of a downlink system, M represents the number of subbands selected by a mobile terminal, and possible values of M and N can be obtained according to a formula N=downlink system bandwidth/subband size and a correspondence table of the downlink system bandwidth, subband size and M;

here, N, M and i can be taken as indexes of the intermediate value table to represent each value in the intermediate value table as the value gained by calculating when the values of M, N and i are all the same.

Step 102: the eNB receives r; wherein r is a combined index;

here, prior to step 102, further comprising: a mobile terminal reports the combined index to the eNB.

Step 103: the eNB calculates the difference between the received r and the

${\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}\quad$

corresponding to each obtained subband index, and searches the sequences

${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle}{\quad{,{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle}{\quad{,\ldots \mspace{14mu},{{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}\quad}}}}}}$

in the stored intermediate value table according to the calculated difference to obtain each s_(i), which constitutes {s_(i)}_(i=0) ^(M−1);

where i=0, 1, . . . , (M−1); N represents the number of subbands of a downlink system, M represents the number of subbands selected by a mobile terminal, and {s_(i)}_(i=0) ^(M−1) represents a set comprising M subband indexes in ascending order.

The step of obtaining each s_(i) specifically is as follows.

Step A1: initializing k=0, then my_r=r;

wherein my_r refers to the difference between the received r and the

${\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}\quad$

corresponding to each obtained subband index; when k=0, because no subband index is obtained, then my_r=r.

Step B1: searching the first value that is not greater than the current my_r from left to right in the sequences

${\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle}{\quad{,{{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle}{\quad{,\ldots \mspace{14mu},{{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}\quad}}}}}}$

of the stored intermediate value table, marking the searched value as

${\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}{\quad,}$

and taking j as an obtained subband index s_(k);

wherein the values of N and M in the sequences

${\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}$

are respectively equal to the number of subbands of the current downlink system and the number of subbands selected by the mobile terminal, that is, respectively equal to the values of N and M of received r that a UE gained by calculating.

Step C1: setting

${my\_ r} = {{my\_ r} - {\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}}$

and k=k+1, returning to execute step B1 until k is greater than (M−1) to complete the current subband index determination, and then ending the subband index determination flow of this time;

here, the set of the obtained subband indexes is represented as {s_(i)}_(i=0) ^(k) when k=k+1, the

$\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each element in {s_(i)}_(i=0) ^(k) is represented as

$\left\{ {\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle} \right\}_{i = 0}^{k},$

and my_r refers to the difference between the received r and the

$\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each obtained subband index, which is represented as

${my\_ r} = {r - {\sum\limits_{i = 0}^{k}{\quad{{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}.}}}}$

Here, the particular step of obtaining each s_(i) may also be as follows.

Step A2: initializing k=0, then my_r=r, wherein my_r refers to the difference between the received r and the

$\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each obtained subband index;

Step B2: searching the last value that is not greater than the current my_r from right to left in the sequences

$\quad{{\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\quad{{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\quad{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}}}}}$

of the stored intermediate value table, marking the searched value as

$\quad{{\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},}$

and taking j as an obtained subband index s_(k); and

Step C2: setting

${my\_ r} = {{my\_ r} - {\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}}$

and k=k+1, regarding the set of the obtained subband indexes as {s_(i)}_(i=0) ^(k) and regarding the

$\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each element in

${\left\{ s_{i} \right\}_{i = 0}^{k}\mspace{14mu} {as}\mspace{14mu} \left\{ {\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle} \right\}_{i = 0}^{k}},$

returning to execute step B2 until k is greater than (M−1), and then ending the subband index determination flow of this time;

here, prior to step 103, further comprising: determining whether the received combined index is greater than or equal to 0 but smaller than or equal to

${\begin{pmatrix} N \\ M \end{pmatrix} - 1};$

if yes, executing step 103; otherwise, reporting an abnormality to end the subband index determination flow of this time.

Further, the intermediate value table may be released after the subband index determination flow of this time is ended when memory resource is insufficient, and a new intermediate value table is regenerated in the next subband index determination flow.

The structure of a subband index reporting device in an embodiment of the present invention comprises, as shown in FIG. 2, a table generation module, a receiving module and a processing module, wherein

the table generation module is used for obtaining sequences

$\quad{{\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle},{\quad{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle},\ldots \mspace{14mu},{\quad{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}}}}}$

according to possible values of M and N and storing the gained sequences as an intermediate value table;

the receiving module is used for receiving r;

the processing module is used for calculating the difference between the received r and the

$\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each obtained subband index, and searching the sequences

$\quad{{\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle},{\quad{{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle},\ldots \mspace{14mu},{\quad{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}}}}}$

in the stored intermediate value table according to the calculated difference to obtain each s_(i), which constitutes {s_(i)}_(i=0) ^(M−1);

wherein i=0, 1, . . . , (M−1); N represents the number of subbands of a downlink system, M represents the number of subbands selected by a mobile terminal, r represents a combined index, and {s_(i)}_(i=0) ^(M−1) represents a set comprising M subband indexes sorted in ascending order.

Wherein, the table generation module comprises a first calculation module and a first storage module, wherein

the first calculation module is used for plugging the possible values of M and N in

$\langle{\quad\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}$

to calculate the values of

$\langle{{\quad\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle},}$

and respectively sorting, according to the ascending order of h, each value of

$\langle{\quad\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}$

that are gained by calculating on the condition that the values of M, N and i are all the same so as to obtain each sequence of

$\langle{{\quad\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle},{\langle{{\quad\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle{\quad\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}}}}}$

that are respectively corresponding to different values of M, N and i; and

the first storage module is used for storing the obtained sequences as the intermediate value table.

Further, the processing module comprises an initialization module, a searching module, a second storage module and a second calculation module, wherein

the initialization module is used for initializing k=0, then my_r=r, and sending the result of the initialization to the searching module, wherein my_r refers to the difference between the received r and the

$\langle{\quad\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each obtained subband index, and r represents a combined index;

the searching module is used for searching the first value that is not greater than the current my_r from left to right in the sequences

$\langle{{\quad\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\langle{{\quad\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle{\quad\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}}}}}$

of the stored intermediate value table, marking the searched value as

$\langle{{\quad\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},}$

sending j to the second storage module as an obtained subband index s_(k), and sending the current my_r and

$\langle{\quad\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}$

to the second calculation module; or searching the last value that is not greater than the current my_r from right to left in the sequences

$\langle{{\quad\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\langle{{\quad\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle{\quad\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}}}}}$

of the stored intermediate value table, marking the searched value as

$\langle{{\quad\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},}$

and taking j as an obtained subband index s_(k);

the second storage module is used for storing each obtained s_(k) which constitutes {s_(i)}_(i=0) ^(k) and each s_(i) stored in the second storage module constitutes {s_(i)}_(i=0) ^(M−1) until k is greater than (M−1); and

the second calculation module is used for setting

${my\_ r} = {{my\_ r} - {\langle{\quad\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}}}$

and k=k+1, and returning my_r and k to the searching module, and then ending the flow until k is greater than (M−1).

The above-mentioned

$\langle{\quad\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$

corresponding to each element in the {s_(i)}_(i=0) ^(k) is

$\left\{ {\left. \langle{\quad\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle} \right\}_{i = 0}^{k}.} \right.$

The processing module further comprises a judging module which is used for triggering the initialization module when the received combined index is greater than or equal to 0 but smaller or equal to

$\begin{pmatrix} N \\ M \end{pmatrix} - 1.$

The above are only preferred embodiments of the present invention but not limitation to the protection scope of the present invention. 

1. A method for determining a subband index, generating and storing an intermediate value table in advance according to possible values of M and N, the method further comprising: an Evolved Node B (eNB) receiving r, calculating a difference between the received r and a $\langle{\quad\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$ corresponding to each obtained subband index, searching sequences $\langle{{\quad\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle},{\langle{{\quad\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle{{\quad\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle},}}}}}$ in the stored intermediate value table according to the calculated difference to obtain each s_(i), which constituting {s_(i)}_(i=0) ^(M−1); where i=0, 1, . . . , (M−1); N represents the number of subbands of a downlink system, M represents the number of subbands selected by a mobile terminal, r represents a combined index, and {s_(i)}_(i=0) ^(M−1) represents a set comprising M subband indexes sorted in ascending order.
 2. The method for determining a subband index according to claim 1, further comprising, prior to calculating the difference, determining whether the received combined index is greater than or equal to 0 but smaller than or equal to $\begin{pmatrix} N \\ M \end{pmatrix} - 1.$
 3. The method for determining a subband index according to claim 1, further comprising, prior to the eNB receiving the combined index, the mobile terminal reporting the combined index to the eNB.
 4. The method for determining a subband index according to claim 1, wherein generating the intermediate value table in advance according to possible values of M and N specifically comprises: plugging the possible values of M and N in $\langle{\quad\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}$ to calculate the values of $\langle{{\quad\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle},}$ and respectively sorting, according to the ascending order of h, each value of $\langle{\quad\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}$ that are gained by calculating on the condition that the values of M, N and i are all the same so as to obtain each sequence of $\langle{{\quad\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle},{\langle{{\quad\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle{{\quad\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle},}}}}}$ that are respectively corresponding to different values of M, N and i; and storing the each sequence to obtain the intermediate value table; where h=0, 1, . . . , N.
 5. The method for determining a subband index according to claim 4, further comprising, after generating the intermediate value table, taking N, M and i as indexes of the intermediate value table.
 6. The method for determining a subband index according to claim 1, wherein obtaining each s_(i) specifically comprises: A1: initializing k=0, then my_r=r, wherein my_r refers to the difference between the received r and the $\langle{\quad\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$ corresponding to each obtained subband index; B1: searching the first value that is not greater than the current my_r from left to right in the sequences $\langle{{\quad\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\langle{{\quad\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle{\quad\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}}}}}$ of the stored intermediate value table, marking the searched value as $\langle{\quad\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}$ and taking j as an obtained subband index s_(k), and C1: setting ${my\_ r} = {{my\_ r} - {\langle{\quad\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}}}$ and k=k+1, regarding a set of the obtained subband indexes as {s_(i)}_(i=0) ^(k) and regarding the $\langle{\quad\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$ corresponding to each element in $\left\{ s_{i} \right\}_{i = 0}^{k}\mspace{14mu} {as}\mspace{14mu} \left\{ {\left. \langle{\quad\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle} \right\}_{i = 0}^{k},} \right.$ returning to execute step B1 until k is greater than (M−1), and then ending the subband index determination flow of this time.
 7. The method for determining a subband index according to claim 1, wherein obtaining each s_(i) specifically comprises: A2: initializing k=0, then my_r=r, wherein my_r refers to the difference between the received r and the $\langle{\quad\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$ corresponding to each obtained subband index; B2: searching the last value that is not greater than the current my_r from right to left in the sequences $\langle{{\quad\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\langle{{\quad\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle{\quad\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}}}}}$ of the stored intermediate value table, marking the searched value as $\langle{{\quad\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},}$ and taking j as an obtained subband index s_(k), and C2: setting ${my\_ r} = {{my\_ r} - {\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}}$ and k=k+1, regarding a set of the obtained subband indexes as {s_(i)}_(i=0) ^(k) and regarding the $\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$ corresponding to each element in {s_(i)}_(i=0) ^(k) as $\left\{ {\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle} \right\}_{i = 0}^{k},$ returning to execute step B2 until k is greater than (M−1), and then ending the subband index determination flow of this time.
 8. A device for determining a subband index, comprising: a table generation module, a receiving module and a processing module, wherein the table generation module is used for generating and storing an intermediate value table according to possible values of M and N; the receiving module is used for receiving r; and the processing module is used for calculating a difference between the received r and $\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$ corresponding to each obtained subband index, and searching sequences ${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle},{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}$ in the stored intermediate value table according to the calculated difference to obtain each s_(i), which constitutes {s_(i)}_(i=0) ^(M−1); wherein i=0, 1, . . . , (M−1); N represents the number of subbands of a downlink system, M represents the number of subbands selected by a mobile terminal, r represents a combined index, and {s_(i)}_(i=0) ^(M−1) represents a set comprising M subband indexes sorted in ascending order.
 9. The device for determining a subband index according to claim 8, wherein the table generation module comprises a first calculation module and a first storage module, wherein the first calculation module is used for plugging the possible values of M and N in ${\langle\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle};$ and respectively sorting, according to the ascending order of h, each value of $\quad{\langle\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}$ that are gained by calculating on the condition that the values of M, N and i are all the same so as to obtain each sequence of ${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle},{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}$ that are respectively corresponding to different values of M, N and i; and the first storage module is used for storing the obtained sequences as the intermediate value table.
 10. The device for determining a subband index according to claim 8, wherein the processing module comprises an initialization module, a searching module, a second storage module and a second calculation module, wherein the initialization module is used for initializing k=0, then my_r=r, and sending the result of the initialization to the searching module, wherein my_r refers to the difference between the received r and the $\quad{\langle\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$ corresponding to each obtained subband index, and r represents a combined index; the searching module is used for searching the first value that is not greater than the current my_r from left to right in the sequences ${\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}$ of the stored intermediate value table, marking the searched value as ${\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},$ and sending j to the second storage module as an obtained subband index s_(k), and sending the current my_r and $\quad{\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}$ to the second calculation module; or searching the last value that is not greater than the current my_r from right to left in the sequences ${\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}$ of the stored intermediate value table, marking the searched value as ${\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},$ and taking j as an obtained subband index s_(k), the second storage module is used for storing each obtained s_(k) that constitutes {s_(i)}_(i=0) ^(k), and each s_(i) stored in the second storage module constitutes {s_(i)}_(i=0) ^(M−1) until k is greater than (M−1); and the second calculation module is used for setting ${my\_ r} = {{my\_ r} - {\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}}$ and k=k+1, and returning my_r and k to the searching module, and then ending the flow until k is greater than (M−1).
 11. The device for determining a subband index according to claim 10, wherein the processing module further comprises a judging module which is used for triggering the initialization module when the received combined index is greater than or equal to 0 but smaller than or equal to $\begin{pmatrix} N \\ M \end{pmatrix} - 1.$
 12. The method for determining a subband index according to claim 2, further comprising, prior to the eNB receiving the combined index, the mobile terminal reporting the combined index to the eNB.
 13. The method for determining a subband index according to claim 2, wherein generating the intermediate value table in advance according to possible values of M and N specifically comprises: plugging the possible values of M and N in $\langle{\quad\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}$ to calculate the values of $\langle{{\quad\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle},}$ and respectively sorting, according to the ascending order of h, each value of $\langle{\quad\begin{matrix} {N - h} \\ {M - i} \end{matrix}\rangle}$ that are gained by calculating on the condition that the values of M, N and i are all the same so as to obtain each sequence of ${\langle\begin{matrix} {N - 1} \\ {M - i} \end{matrix}\rangle},{\langle\begin{matrix} {N - 2} \\ {M - i} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle\begin{matrix} 0 \\ {M - i} \end{matrix}\rangle}$ that are respectively corresponding to different values of M, N and i; and storing the each sequence to obtain the intermediate value table; where h=0, 1, . . . , N.
 14. The method for determining a subband index according to claim 13, further comprising, after generating the intermediate value table, taking N, M and i as indexes of the intermediate value table.
 15. The device for determining a subband index according to claim 9, wherein the processing module comprises an initialization module, a searching module, a second storage module and a second calculation module, wherein the initialization module is used for initializing k=0, then my_r=r, and sending the result of the initialization to the searching module, wherein my_r refers to the difference between the received r and the $\langle{\quad\begin{matrix} {N - s_{i}} \\ {M - i} \end{matrix}\rangle}$ corresponding to each obtained subband index, and r represents a combined index; the searching module is used for searching the first value that is not greater than the current my_r from left to right in the sequences ${\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}$ of the stored intermediate value table, marking the searched value as $\langle{{\quad\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},}$ and sending j to the second storage module as an obtained subband index s_(k), and sending the current my_r and $\langle{\quad\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}$ to the second calculation module; or searching the last value that is not greater than the current my_r from right to left in the sequences ${\langle\begin{matrix} {N - 1} \\ {M - k} \end{matrix}\rangle},{\langle\begin{matrix} {N - 2} \\ {M - k} \end{matrix}\rangle},\ldots \mspace{14mu},{\langle\begin{matrix} 0 \\ {M - k} \end{matrix}\rangle}$ of the stored intermediate value table, marking the searched value as $\langle{{\quad\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle},}$ and taking j as an obtained subband index s_(k), the second storage module is used for storing each obtained s_(k) that constitutes {s_(i)}_(i=0) ^(k), and each s_(i) stored in the second storage module constitutes {s_(i)}_(i=0) ^(M−1) until k is greater than (M−1); and the second calculation module is used for setting ${my\_ r} = {{my\_ r} - {\langle\begin{matrix} {N - j} \\ {M - k} \end{matrix}\rangle}}$ and k=k+1, and returning my_r and k to the searching module, and then ending the flow until k is greater than (M−1).
 16. The device for determining a subband index according to claim 15, wherein the processing module further comprises a judging module which is used for triggering the initialization module when the received combined index is greater than or equal to 0 but smaller than or equal to $\begin{pmatrix} N \\ M \end{pmatrix} - 1.$ 